package com.mowh.gof23.structural.patterns.adapter.delegate;

/**
 * @author mowh1gd
 * @create 2023/10/7 16:26
 */
//对象适配器模式（聚合委托方式）
public class PrintBanner extends Print{
    //这里聚合了Banner实例，用委托完成Print的功能
    private Banner banner;

    public PrintBanner(String name) {
        this.banner = new Banner(name);
    }

    @Override
    public void printWeak() {
        banner.showWithParentheses();//用委托完成Print的功能
    }

    @Override
    public void printStrong() {
        banner.showWithAsterisk();//用委托完成Print的功能
    }
}
